﻿using System.ComponentModel;

namespace Lanbt.Core.Entity.Enums
{
    /// <summary>
    /// 调度任务枚举
    /// </summary>
    public class QuartzEnums
    {
        /// <summary>
        /// 任务类型
        /// </summary>
        public enum JobType
        {
            /// <summary>
            /// API
            /// </summary>
            [Description("API")]
            HTTP = 1,

            /// <summary>
            /// 邮箱
            /// </summary>
            [Description("邮箱")]
            Email = 2,
        }

        /// <summary>
        /// API访问方法
        /// </summary>
        public enum APIHttpMethod
        {
            [Description("GET")]
            GET = 1,
            [Description("POST")]
            POST = 2,
            [Description("PUT")]
            PUT = 3,
            [Description("DELETE")]
            DELETE = 4,
        }

        /// <summary>
        /// 触发器类型
        /// </summary>
        public enum TriggerType
        {
            Cron = 1,
            Simple = 2,
        }

        /// <summary>
        /// 邮箱通知类型
        /// </summary>
        public enum MailNoticeType
        {
            /// <summary>
            /// 不通知
            /// </summary>
            [Description("不通知")]
            None = 0,

            /// <summary>
            /// 通知异常
            /// </summary>
            [Description("通知异常")]
            Error = 1,

            /// <summary>
            /// 通知警告
            /// </summary>
            [Description("通知警告")]
            Waring = 2,

            /// <summary>
            /// 通知异常和警告
            /// </summary>
            [Description("通知异常和警告")]
            ErrorAndWaring = 3,

            /// <summary>
            /// 通知所有
            /// </summary>
            [Description("通知所有")]
            All = 4,
        }
    }
}
